package com.osig.ec.cfca;

import java.io.File;

import cfca.com.itextpdf.text.pdf.codec.Base64;
import cfca.paperless.client.servlet.PaperlessClient;
import cfca.paperless.client.util.IoUtil;
import cfca.paperless.client.util.StringUtil;

// 获取合同模板  
public class testGetTemplate {
	public static String  getTemplateUrl(String url,String code) throws Exception {

		PaperlessClient clientAssistBean = new PaperlessClient(PaperlessConfig.assistUrl); // 无纸化辅助接口的访问URL
		// String tmpXml =
		// clientAssistBean.getTemplate(templateCode,"",operatorCode);//获取模板信息
		String tmpXml = clientAssistBean.getTemplate(code, "", PaperlessConfig.operatorCode);// 获取模板信息
		String msg = StringUtil.getNodeText(tmpXml, "Code");// 成功为200，否则为错误码
		String message = StringUtil.getNodeText(tmpXml, "Message");// 错误信息
		String saveurl = null;
		if (!"200".equals(msg)) {
			System.out.println(msg  + ":" + message);
		} else {
			Object[] objArr = StringUtil.getXmlFieldArr(tmpXml, "Template");// 模板Xml文件数组
			for (Object obj : objArr) {
				String templateCode = StringUtil.getXmlField(obj.toString(), "TemplateCode");// 编号
				String templateName = StringUtil.getXmlField(obj.toString(), "TemplateName");// 名称
				String TemplateFormat = StringUtil.getXmlField(obj.toString(), "TemplateFormat");// 格式
				String TemplateData = StringUtil.getXmlField(obj.toString(), "TemplateData");//HashValue
				System.out.println(templateCode + "---" + templateName+"---"+TemplateFormat);
				
				String TemplateData1 = StringUtil.getXmlField(obj.toString(),
				"TemplateData");
				StringUtil.getXmlField(obj.toString(), "TemplateFormat");
				byte[] tmp = Base64.decode(TemplateData1);
				saveurl = url +File.separator + templateName + "." +TemplateFormat;
				IoUtil.write(saveurl, tmp);
				System.out.println(templateCode);
				
			}
		}
		return saveurl;
	}
}
